#ifndef __UI_VFB__
#define __UI_VFB__

#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
#include "includes.h"
#include "ui_config.h"

typedef struct {
  color_t f_color;
  color_t b_color;
  uint16_t line_width;
} ui_vfb_context_t;

extern void ui_draw_pixel(uint16_t x1, int16_t y1, ui_vfb_context_t *pcontext);
extern void ui_draw_line(uint16_t x1, int16_t y1, uint16_t x2, uint16_t y2, ui_vfb_context_t *pcontext);
extern void ui_fill_screen(ui_vfb_context_t *pcontext);
extern void ui_clear_screen(ui_vfb_context_t *pcontext);
extern void ui_fill_rect(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, ui_vfb_context_t *pcontext);


extern void ui_line(uint16_t x1,uint16_t y1,uint16_t x2,uint16_t y2);
extern void ui_line_to(uint16_t x1,uint16_t y1);
extern void ui_retangle(uint16_t x1,uint16_t y1,uint16_t width,uint16_t height );
extern void ui_cicle(uint16_t x1,uint16_t y2,float r);
extern void ui_text(uint16_t x1,uint16_t y1,uint8_t *text,uint16_t length);

#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif /* __UI_VFB__ */